package com.tianyu.inspection.service.api;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.tianyu.inspection.entity.Danger;
import com.tianyu.inspection.entity.model.OperateMo;
import com.tianyu.inspection.entity.model.QueryMo;
import com.tianyu.inspection.entity.vo.ServiceRo;
import org.springframework.ui.ModelMap;

/**********************************
 * @Author YSW
 * @Description 险情服务
 * @Date 2021/1/12 - 11:51
 **********************************/

public interface IDangerService extends IBaseService<Danger>{

    /**
     * 查询单个险情的对应处理进程
     * @param queryMo 查询参数
     * @return IPage<ModelMap>
     */
    ModelMap dangerStatistics(QueryMo queryMo);

    /**
     * 分页查询险情详情  携带险情类型、等级、处理情况等信息
     * @param queryMo 查询参数
     * @return IPage<ModelMap>
     */
    IPage<Danger> selectDangerDetailsList(QueryMo queryMo);

    /**
     * 分页查询险情详情  携带险情类型、等级、处理情况等信息
     * @param queryMo 查询参数
     * @return IPage<ModelMap>
     */
    IPage<Danger> selectDangerDeepDetailsList(QueryMo queryMo);

    /**
     * 分页查询险情并获取对应的险情类型
     * @param queryMo 查询参数
     * @return IPage<ModelMap>
     */
    IPage<ModelMap> selectPatrolDangerAndDangerTypeList(QueryMo queryMo);

    /**
     * 分页查询险情并获取对应的险情类型
     * @param queryMo 查询参数
     * @return IPage<ModelMap>
     */
    IPage<ModelMap> selectPatrolDangerAndDangerTypeList2(QueryMo queryMo);

    /**
     * 插入并获取
     * @param operateMo 查询参数
     * @param userId 标记者ID
     * @return IPage<ModelMap>
     */
    ServiceRo insertDangerAndDangerProcess(OperateMo operateMo,Integer userId);

    /**
     * 插入并获取
     * @param operateMo 查询参数
     * @return IPage<ModelMap>
     */
    ServiceRo updateDangerAndDangerProcessUser(OperateMo operateMo);
}
